#include "AstTypes.h"

namespace Ast {

QString typeName(AstTypes type)
{
    switch(type){
    
    case Assert: return "Assert";
    case Assign: return "Assign";
    case Attribute: return "Attribute";
    case AugAssign: return "AugAssign";
    case BinOp: return "BinOp";
    case BoolOp: return "BoolOp";
    case Break: return "Break";
    case Call: return "Call";
    case ClassDef: return "ClassDef";
    case Compare: return "Compare";
    case Comprehension: return "Comprehension";
    case Continue: return "Continue";
    case Delete: return "Delete";
    case Dict: return "Dict";
    case DictComp: return "DictComp";
    case Ellipsis: return "Ellipsis";
    case Expr: return "Expr";
    case Expression: return "Expression";
    case ExtSlice: return "ExtSlice";
    case For: return "For";
    case FunctionDef: return "FunctionDef";
    case GeneratorExp: return "GeneratorExp";
    case Global: return "Global";
    case If: return "If";
    case IfExp: return "IfExp";
    case Import: return "Import";
    case ImportFrom: return "ImportFrom";
    case Index: return "Index";
    case Interactive: return "Interactive";
    case Lambda: return "Lambda";
    case List: return "List";
    case ListComp: return "ListComp";
    case Module: return "Module";
    case Name: return "Name";
    case NameTok: return "NameTok";
    case NameTokType: return "NameTokType";
    case NonLocal: return "NonLocal";
    case Num: return "Num";
    case Pass: return "Pass";
    case Raise: return "Raise";
    case Repr: return "Repr";
    case Return: return "Return";
    case Set: return "Set";
    case SetComp: return "SetComp";
    case Slice: return "Slice";
    case Starred: return "Starred";
    case Str: return "Str";
    case StrJoin: return "StrJoin";
    case Subscript: return "Subscript";
    case TryExcept: return "TryExcept";
    case TryFinally: return "TryFinally";
    case Tuple: return "Tuple";
    case UnaryOp: return "UnaryOp";
    case While: return "While";
    case With: return "With";
    case WithItem: return "WithItem";
    case WithItemType: return "WithItemType";
    case Yield: return "Yield";
    case aliasType: return "aliasType";
    case argumentsType: return "argumentsType";
    case commentType: return "commentType";
    case comprehensionType: return "comprehensionType";
    case decoratorsType: return "decoratorsType";
    case excepthandlerType: return "excepthandlerType";
    case exprType: return "exprType";
    case keywordType: return "keywordType";
    case modType: return "modType";
    case sliceType: return "sliceType";
    case stmtType: return "stmtType";
    case suiteType: return "suiteType";
    case SimpleNode: return "SimpleNode";
    case Object: return "Object";
    case Suite: return "Suite";
    }
    return "";
}

}